Transcoding is the direct digital-to-digital data conversion of one encoding format to another encoding format. This may often be done in cases where a destination device does not support the source encoding format or has limited storage capacity that mandates a reduced file size.
Transcoding may typically be implemented as a two-step process. For example, such a two-step process may involve the original video clip being decoded to an intermediate uncompressed format that may then be encoded into the destination format. While it is usually preferable to use source code and recompile the application, there are times when doing so is either impractical or impossible.